﻿using System.IO;
using System.Threading.Tasks;
using System.Windows.Media.Imaging;
using WhallaToolkit.ShareServices.Models.AccessTokens;

namespace WhallaToolkit.ShareServices.Interfaces
{
    public interface IShareService
    {
        AccessToken Token { get; set; }
        void SetToken(AccessToken tokens);
        Task<bool> PostMediaOnSocialTask(AccessToken tokens, Stream photoSource, string description);
        Task<bool> PostMediaOnSocialTask(Stream photoSource, string description);
        Task<bool> PostMediaOnSocialTask(AccessToken tokens, BitmapImage photoSource, string description);
        Task<bool> PostMediaOnSocialTask(BitmapImage photoSource, string description);
        Task<bool> PostLinkOnSocialTask(AccessToken tokens, string link, string description);
        Task<bool> PostLinkOnSocialTask(string link, string description);

        Task<bool> PostMessageOnSocialTask(string description);
    }
}
